package com.power.ding.api;

import com.plf.common.domain.ResponseDTO;
import com.power.ding.model.Di_userdept;
import com.power.ding.model.pageInfo.Di_userdeptPageInfo;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/**
 *  用户部门关系 Feign
 */
public interface IDi_userdeptFeign {

    /**
     * 用户部门关系分页列表
     */
    @PostMapping("/di_userdept/list")
    ResponseDTO list(@RequestBody Di_userdeptPageInfo di_userdeptPageInfo);

    /**
    * 查看用户部门关系
    */
    @GetMapping("/di_userdept/view")
    ResponseDTO view(@RequestParam("id") String id);

    /**
    * 删除用户部门关系
    */
    @PostMapping("/di_userdept/delete")
    ResponseDTO delete(@RequestParam("id") String id);

    ///**
    // * 查看用户部门关系 复合主键使用
    // */
    //@PostMapping("/di_userdept/viewByPK")
    //ResponseDTO viewByPK(@RequestBody Di_userdept.Di_userdeptPK pk);

    /**
     * 修改或保存用户部门关系
     */
    @PostMapping("/di_userdept/save")
    ResponseDTO save(@RequestBody Di_userdept  di_userdept);

    ///**
    // * 删除用户部门关系 复合主键使用
    // */
    //@PostMapping("/di_userdept/deleteByPK")
    //ResponseDTO deleteByPK(@RequestBody Di_userdept.Di_userdeptPK pk);
    
    /**
     * 批量删除用户部门关系
     */
    @PostMapping("/di_userdept/batchDel")
    ResponseDTO batchDel(@RequestParam("ids") String ids);
    
     /**
     * 导出excel
     */
    @PostMapping("/di_userdept/output")
    void output(HttpServletResponse response, @RequestBody Di_userdeptPageInfo di_userdeptPageInfo);

     /**
     * 导出excel模板
     */
    @PostMapping("/di_userdept/exportExcelTemplate")
    void exportExcelTemplate(HttpServletResponse response);

     /**
     *	导入excel
     */
    @PostMapping("/di_userdept/importExcel")
    ResponseDTO importExcel(@RequestBody MultipartFile file) throws IOException ;
    
}
